/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package mx.itschapala.dsw2.biblioteca8a.bl;

import java.util.List;
import javax.ejb.EJB;
import javax.ejb.Stateless;
import mx.itschapala.dsw2.biblioteca8a.dao.CategoriaDaoLocal;
import mx.itschapala.dsw2.biblioteca8a.enumeracion.EstadoServicio;
import mx.itschapala.dsw2.biblioteca8a.modelo.Categoria;

/**
 *
 * @author Maricela
 */
@Stateless
public class Categoriabl implements CategoriablLocal {
    @EJB
    private CategoriaDaoLocal categoriaDao;

    @Override
    public EstadoServicio register(Categoria category) {
        if (categoriaDao.findByClave(category)){
        //Nada
            return EstadoServicio.INCOMPLETE;
        }else {
            categoriaDao.create(category);
            return EstadoServicio.COMPLETE;
        }
    }

    @Override
    public EstadoServicio modify(Categoria category) {
        if (category.getId() == null || categoriaDao.find(category.getId()) == null){
            return EstadoServicio.INCOMPLETE;
        }else {
          categoriaDao.edit(category);
            return EstadoServicio.COMPLETE;
        }
    }

    @Override
    public EstadoServicio delete(Categoria category) {
        if (category.getId() == null || categoriaDao.find(category.getId()) == null){
            return EstadoServicio.INCOMPLETE;
        }else {
          categoriaDao.remove(category);
            return EstadoServicio.COMPLETE;
        }
    }

    @Override
    public Categoria finById(Integer id) {
        return categoriaDao.find(id);
    }
    @Override
     public List<Categoria> getAll() {
        return categoriaDao.findAll();
    }
    

    

}
